home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 007 / devasm.arc / DD_MAC.MAC < prev    next >
Text File  |  1985-11-20  |  2KB  |  78 lines

  1. ;
  2. ;        Initialize 8 Constants for Character Device Name to ' '
  3. ;
  4. IN_NAME  MACRO
  5. X        =      0
  6.          REPT   8
  7. X        =      X+1
  8.          CHARSP %X
  9.          ENDM
  10.          ENDM
  11. ;
  12. ;        Assign each letter of Character Device Name
  13. ;          to a Constant
  14. ;
  15. MKNAME   MACRO  NLIST
  16. X        =      0
  17.          IRPC   M,NLIST
  18. X        =      X+1
  19.          CHAREQU   %X,M
  20.          ENDM
  21.          ENDM
  22. ;
  23. ;        Assign Constant the ASCII value of Z
  24. ;
  25. CHAREQU  MACRO  Y,Z
  26. N&Y      =      '&Z'
  27.          ENDM
  28. ;
  29. ;        Assign Constant an ASCII value of ' '
  30. ;
  31. CHARSP   MACRO  Y
  32. N&Y      =      ' '
  33.          ENDM
  34. ;
  35. ;        Convert ASCII Constants to String of DB's
  36. ;
  37. DDNAME   MACRO
  38. X        =      0
  39.          REPT   8
  40. X        =      X+1
  41.          CHARDB  %X
  42.          ENDM
  43.          ENDM
  44. ;
  45. ;        Convert an ASCII Constant to a DB
  46. ;
  47. CHARDB  MACRO  Y
  48.          DB     N&Y
  49.          ENDM
  50. ;
  51. ;        Define a Device Header Structure
  52. ;
  53. DEVHDR   MACRO  NXTOFF,NXTSEG,ATTRIB,STRAT,INTRPT
  54.          DW     NXTOFF
  55.          DW     NXTSEG
  56.          DW     ATTRIB
  57.          DW     STRAT
  58.          DW     INTRPT
  59.          DDNAME
  60.          ENDM
  61. ;
  62. ;        DEF = TRUE if the function is implemented
  63. ;        NAME = name of the function
  64. ;        ENTRY = label of the function entry point
  65. ;                 or exit point if not implemented
  66. ;
  67. FUNCTION   MACRO   DEF,NAME,ENTRY
  68.          ;
  69.          _&NAME EQU     DEF
  70.          IF   _&NAME
  71.               IFNDEF  ENTRY
  72.                EXTRN   ENTRY:near
  73.               ENDIF
  74.          ENDIF
  75.          .&NAME EQU     ENTRY
  76.          ENDM
  77.  
  78.